Many organizations have hierarchical organizational structures. For example, organizations may be structured into different parent and subsidiary companies. Hierarchical structures may also be implemented within individual companies as different divisions, departments, and groups within a company may be organized hierarchically. For example, groups and division may be organized by product and/or geographic area, so that similar groups of products may be part of a same division covering a particular geographic area. Hierarchies may also be used to organize data by type, function, or other criteria. For example, cost and/or profit centers of an organization may be organized into hierarchical groups in a tree structure according to a product type, geographic location, department organization, or other criteria. One or more nodes in the tree structure may then be selected to identify particular data of interest in a query or other data inquiry.
In many organizations, these hierarchical structures may change periodically as the organization reorganizes, merges, acquires another entity, or otherwise restructures. As the hierarchical structures change, the data structure in the organization's computing systems representing the hierarchy must also be updated. In many instances, the data structure is updated by overwriting the existing the data structure with the new hierarchical information. While the existing data structure may then accurately reflect an updated hierarchy, this procedure may make it difficult to retrieve and use past hierarchical information when querying historical data.
The inventors perceive a need to timely update hierarchical data structures as a hierarchical structure of an organization changes while preserving and making accessible historical hierarchical structures.